A compute node is a combination of hardware resources, including one or more processing devices, memory and networking circuits, as well as a software module known as a hypervisor. The hypervisor is used to support a plurality of virtual machines, each for example being associated with a different operating system. A compute node provides a single execution environment in which more than one virtual machine may be executed.
In certain applications, it may be desired to provide a protected execution environment, for example for security applications, such as encryption or decryption, for real time services, and/or for other services.
However, while it would be beneficial to be able to allow virtual machines to make use of such services, there is currently no mechanism permitting this to be achieved without a complex and costly implementation involving several integrated circuits.